Chong Yidong <cyd at stupidchicken.com>
authorGlenn Morris <rgm@gnu.org>
Thu, 10 Jan 2008 04:07:46 +0000 (04:07 +0000)
committerGlenn Morris <rgm@gnu.org>
Thu, 10 Jan 2008 04:07:46 +0000 (04:07 +0000)
(wait_reading_process_output): Check for window changes caused by timers.

src/process.c

index bf974352a29f5fc8239fb2f2fe5929a69a9e155a..f7abc7993d3b56a73a75d5d8024a4f8c40f021c6 100644 (file)
@@ -4697,6 +4697,7 @@ wait_reading_process_output (time_limit, microsecs, read_kbd, do_display,
        {
          int old_timers_run = timers_run;
          struct buffer *old_buffer = current_buffer;
+         Lisp_Object old_window = selected_window;
          int leave = 0;
 
          if (detect_input_pending_run_timers (do_display))
@@ -4710,7 +4711,8 @@ wait_reading_process_output (time_limit, microsecs, read_kbd, do_display,
             an alike.  Make read_key_sequence aware of that.  */
          if (timers_run != old_timers_run
              && waiting_for_user_input_p == -1
-             && old_buffer != current_buffer)
+             && (old_buffer != current_buffer
+             || !EQ (old_window, selected_window)))
            record_asynch_buffer_change ();
 
          if (leave)